"""
切片：截取其中的一部分
    字符串、列表、元组都支持切片操作

语法：
    序列[开始位置下标：结束位置下标：步长]    # 左闭右开
"""

go = "why don't we go?"

# 得到整个字符串数据
print(go)

# 切片
str1 = go[3:7]
str2 = go[:3]  # 如果不写开始，默认从0开始
str3 = go[3:]  # 如果不写结束，默认选取到最后

print(str1)
print(str2)
print(str3)

# 考虑步长
str4 = '0123456789'
print(str4[2:5:1])  # 234
print(str4[2:5:2])  # 24
print(str4[2:5])  # 234 如果不写步长，默认为1
print(str4[-4:-1])  # 678 -1表示最后一个数，其余依次类推
print(str4[-4:-1:1])  # 678

print(str4[::-1])  # 如果步长为负数，表示倒叙选取


print(str4[2:5:-1]) # 无法选取数据
print(str4[-4:-1:-1])  # 无法选取数据
# 选取方向：从左到右。 -1步长：从右到左选取
# 如果选取方向和步长方向冲突，则无法选取数据

print(str4[-1:-4:-1]) # 987
